Simulation systems are known which attempt to provide a user with a realistic simulation of being in a predefined environment, such as, for example, on a golf course or in the cockpit of an airplane. This is accomplished by providing the user with appropriate visual cues, or images. For greatest effect images are provided to the user so as to provide for substantially all visually perceptible sensory input to the user. These systems are useful for providing the user with the simulated experience of being in another environment.
Known systems provide for a display device which is typically supported by a user in very close proximity to the user's eyes so as to dominate the visual input received by the user's eyes. In order to provide for a realistic illusion of being in a different environment, known systems have provided for images or scenes shown on the display device to be changed, or modified by a connected image generator in accordance with changes in the position of a user's head.
As an example, a user could experience standing on a golf course ready to tee-off. As the user maintains a forward head position, the user is, for example, presented with an image or scenes of a fairway leading up to a green on the golf course. As the user turns his/her head to the left, the position of the user's head changes with relation to the environment and thus the connected image generator changes images presented to the user on the display so as to give the user the illusion of turning his/her head while standing at the tee. For example, the user might be presented with images of fellow golfers standing to his/her left or right.
In order to provide the user with a realistic visual perception, known systems have used accelerometers to measure the changes in a user's head motion to calculate the position of the user's head. These systems suffer from inaccuracies due to the drift in head location estimates. Although these inaccuracies can be partially compensated for by introducing a high-pass function of the head position estimate to bias any drift toward a steady state “head-upright forward facing” condition. It is useful only if the user's head position makes short deviations from a forward facing heads up condition. Otherwise, in situations such as where a user is non-seated or free-roaming, errors are introduced which cannot be easily compensated for.